package cn.kgc.shiro;

import org.apache.shiro.crypto.hash.Md5Hash;
import org.apache.shiro.crypto.hash.SimpleHash;

public class ShiroMd5 {
    public static void main(String[] args) {
        //密码铭文
        String password = "admin";
        //第一种  使用md5加密
        Md5Hash md5Hash = new Md5Hash(password);
        System.out.printf( "加密：=="+md5Hash.toHex());
        System.out.println();
        //第二种 带盐的md5加密 盐就是在密码后拼接新的字符串，然后加密
        Md5Hash md5Hash1 = new Md5Hash(password,"salt");
        System.out.println(md5Hash1);
        //第三种 避免被破解，多次迭代加密
        Md5Hash md5Hash2 = new Md5Hash(password,"salt",3);
        System.out.println(md5Hash2.toHex());

        //使用父类加密
        SimpleHash simpleHash = new SimpleHash("MD5",password,
                "salt",3);
        System.out.println(simpleHash.toHex());
    }
}
